iT邦幫忙

2023 iThome 鐵人賽

DAY 8
0
自我挑戰組

Unit Test 學習路系列 第 8

Day 7: React TDD 快速實作

  • 分享至 

  • xImage
  •  

今天來實作 TDD精神的測試項目。
學習資源:
https://www.youtube.com/watch?v=foiMMI-pEes&list=PLC3y8-rFHvwirqe1KHFCHJ0RqNuN61SJd&index=9


(一) 設定測試情境

我需要一個 Component 在進入首頁後,顯示對使用者的問候。

測試一: 確認測試 component 有在畫面上。

test("Render a Greet Commponent", () => {
    render(<Greeting />);
    
    const textEl = screen.getByText("Hello");
    expect(textEl).toBeInTheDocument();
});

測試二: 確認測試 component 中有傳入使用者名稱。

test("Render a Greet Commponent with a name", () => {
    render(<Greeting name="Joanna" />);
    
    const textEl = screen.getByText("Hello Joanna");
    expect(textEl).toBeInTheDocument();
});

執行測試內容,結果為 Fail。


(二) 實作功能讓測試通過

建立 Greet commponent

interface GreetingProps{
    name?: string;
}
export default function Greeting(props: GreetingProps){
    return(
        <h1>Hello {props.name||""}</h1>
    )
}

執行測試內容,結果為 Success。


上一篇
Day 6: React Testing Setup
下一篇
Day 8: Jest test() 應用
系列文
Unit Test 學習路31
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言